Apache HTTP Client ব্যবহার করে HttpGet দিয়ে একটি HTTP GET অনুরোধ পাঠানোর জন্য নিচে একটি উদাহরণ এবং ব্যাখ্যা দেওয়া হলো।
উদাহরণ: HttpGet দিয়ে GET অনুরোধ করা
import org.apache.http.HttpEntity;
import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.util.EntityUtils;
public class ApacheHttpGetExample {
public static void main(String[] args) {
// HttpClient তৈরি করুন
CloseableHttpClient httpClient = HttpClients.createDefault();
// GET অনুরোধের জন্য URL দিন
String url = "https://jsonplaceholder.typicode.com/posts/1";
try {
// HttpGet অবজেক্ট তৈরি করুন
HttpGet httpGet = new HttpGet(url);
System.out.println("Executing request: " + httpGet.getRequestLine());
// অনুরোধ পাঠিয়ে প্রতিক্রিয়া সংগ্রহ করুন
CloseableHttpResponse response = httpClient.execute(httpGet);
try {
// প্রতিক্রিয়া থেকে স্ট্যাটাস কোড পান
int statusCode = response.getStatusLine().getStatusCode();
System.out.println("Response Status Code: " + statusCode);
// প্রতিক্রিয়া থেকে HttpEntity পান
HttpEntity entity = response.getEntity();
if (entity != null) {
// প্রতিক্রিয়ার কন্টেন্ট স্ট্রিং আকারে পড়ুন
String responseBody = EntityUtils.toString(entity);
System.out.println("Response Content: " + responseBody);
}
} finally {
// প্রতিক্রিয়া বন্ধ করুন
response.close();
}
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
// HttpClient বন্ধ করুন
httpClient.close();
} catch (Exception ex) {
ex.printStackTrace();
}
}
}
}
কোড ব্যাখ্যা
HttpClient তৈরি করা
CloseableHttpClient httpClient = HttpClients.createDefault();HttpClients.createDefault()ব্যবহার করে ডিফল্ট কনফিগারেশনে একটি HTTP ক্লায়েন্ট তৈরি করা হয়েছে।
HttpGet তৈরি করা
HttpGet httpGet = new HttpGet(url);HttpGetঅবজেক্ট দিয়ে GET অনুরোধ প্রস্তুত করা হয়েছে।- URL সরাসরি
HttpGetএর কনস্ট্রাক্টরে পাস করা হয়েছে।
অনুরোধ পাঠানো এবং প্রতিক্রিয়া সংগ্রহ
CloseableHttpResponse response = httpClient.execute(httpGet);httpClient.execute(httpGet)ব্যবহার করে GET অনুরোধ সার্ভারে পাঠানো হয়েছে।- এর প্রতিক্রিয়া একটি
CloseableHttpResponseঅবজেক্টে সংরক্ষণ করা হয়েছে।
- প্রতিক্রিয়ার স্ট্যাটাস কোড এবং কন্টেন্ট পড়া
স্ট্যাটাস কোড পড়া:
int statusCode = response.getStatusLine().getStatusCode(); System.out.println("Response Status Code: " + statusCode);সার্ভার থেকে প্রাপ্ত HTTP স্ট্যাটাস কোড (
200,404ইত্যাদি) প্রদর্শন করা হয়েছে।বডি কন্টেন্ট পড়া:
HttpEntity entity = response.getEntity(); String responseBody = EntityUtils.toString(entity);HttpEntityথেকে প্রতিক্রিয়ার ডেটাEntityUtils.toString()এর মাধ্যমে স্ট্রিং আকারে পড়া হয়েছে।
- রিসোর্স মুক্ত করা
প্রতিক্রিয়া বন্ধ করুন:
response.close();HttpClient বন্ধ করুন:
httpClient.close();
উপকারিতা
HttpGetসহজ এবং কার্যকর পদ্ধতি HTTP GET অনুরোধের জন্য।- প্রতিক্রিয়ার স্ট্যাটাস কোড এবং ডেটা সহজেই পড়া যায়।
- JSON, XML বা অন্য ফর্ম্যাটে ডেটা প্রসেস করার জন্য ব্যবহার করা যেতে পারে।
নোট
- এই উদাহরণে
https://jsonplaceholder.typicode.com/posts/1ব্যবহার করা হয়েছে, যা একটি উন্মুক্ত API। - প্রকৃত প্রজেক্টে API নিরাপত্তা এবং অটেনটিকেশন (যেমন টোকেন বা কুকি) ব্যবহার করার প্রয়োজন হতে পারে।
Content added By
Read more